\subsection*{Flight Routing System} 
\subsubsection*{Use-case: Plan route} 
\paragraph*{Actor: User}
\paragraph*{Frequency:}
Peak load: 0-200 an hour, needs to be scalable.
\paragraph*{Preconditions:}
User exists and is logged in. \\
Travel route network is existent.
\paragraph*{Postconditions:}
A travel route has been chosen with a max of 3 stops.

\paragraph*{Primary flow:}
\begin{enumerate}
\item Enter departure airport, destination, departure time and number of passengers.
\item The user chooses criteria for search of optimal route and clicks "Plan route".
\item The system calculates the possible routes and displays the 3 most optimal.
\item The user chooses one of the routes and is shown the details for the given route.
\item The user clicks "Book tickets".
\item The user enters personal and credit card information and clicks "Reserve tickets".
\item The system reserves the plane ticket(s).
\item The system updates the number of available seats on the given plane(s).


\end{enumerate}

\paragraph*{Alternative flow:}
3a. The system retrieves no optimal routes. \\
4a. The user refuses the possible routes. \\ \\
6a. Another user has chosen the last possible seats and the user gets an error message. \\ \\
7a. The user has not reserved the seats within 5 minutes and they are unlocked till he selects them again.